#ifndef BC_WEIR_VELOCITY_HPP
#define BC_WEIR_VELOCITY_HPP

#include "bc_weir_base.hpp"

namespace hms
{

template<typename MeshType>
class Weir_velocity : public Weir_base<MeshType>
{
public:
	using BaseType = Weir_base<MeshType>;
	using Type = typename BaseType::Type;
	using BaseType::field;
	using BaseType::patch;
	using BaseType::alpha;
	using BaseType::cp;
	using BaseType::dEdge;
	using BaseType::dField;

public:
	Weir_velocity() = default;
	Weir_velocity(
		Field<MeshType>& v,
		const BoundaryPatch& p,
		const Field<MeshType>& d,
		scalar alpha
	);

	virtual void update() const override;
};

} // namespace hms


#endif